Controller area network (CAN) bus is a message-based communications bus protocol that is often used within automobiles. The CAN bus protocol is used to enable communications between various electronic control units (ECUs), such as an engine control module (ECM), a power train control module (PCM), airbags, antilock brakes, cruise control, electric power steering, audio systems, windows, doors, mirror adjustment, battery and recharging systems for hybrid/electric cars, and many more. The data link layer of the CAN protocol is standardized as International Standards Organization (ISO) 11898.
One growing concern with in-vehicle networks, such as in-vehicle networks that use the CAN bus protocol, is network security. One known technique for attacking an in-vehicle network such as a CAN network is a “denial of service” attack that involves “flooding” the CAN bus. For example, a CAN node of a compromised in-vehicle network is manipulated to send a burst of high priority CAN messages to prevent the rest of the CAN nodes from sending any CAN messages.